/*
 * Evidently, avr-g++ doesn't support all standard c++
 * please see http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=410870
 */

#ifndef CPLUSPLUS_H_
#define CPLUSPLUS_H_

#include <stdlib.h>

void * operator new(size_t size);
void operator delete(void * ptr);

void * operator new[](size_t size);
void operator delete[](void * ptr);

__extension__ typedef int __guard __attribute__((mode (__DI__)));

extern "C" int __cxa_guard_acquire(__guard *);
extern "C" void __cxa_guard_release (__guard *);
extern "C" void __cxa_guard_abort (__guard *);

extern "C" void __cxa_pure_virtual(void);

extern "C" void   atexit( void );

#endif /* CPLUSPLUS_H_ */
